package cn.com.xcf.dao.model;

import java.io.Serializable;
import java.math.BigDecimal;
import java.sql.Date;
import java.sql.Timestamp;

public class InvoiceAppVO implements Serializable { 
    
	private static final long serialVersionUID = 1L;
	private int id;
    private String invoiceAppCode;
    private String  checkCode;
    private String  appDept;
    private String appDeptName;
    private String appPerson;
    private String appPersonName;
    private Timestamp appTime;
    private String settlementDeptId;
    private String settlementDept;
    private String invoiceTypeId;
    private String invoiceType;
    private BigDecimal taxRate;
    private BigDecimal taxPrice;
    private BigDecimal nonTaxPrice;
    private BigDecimal valueAddedTax;
    private String currency;
    private Float exchangeRate;
    private BigDecimal convertedRmb;
    private Date handleTime;
    private String handlePerson;
    private String billExamine;
	
	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getInvoiceAppCode() {
		return invoiceAppCode;
	}

	public void setInvoiceAppCode(String invoiceAppCode) {
		this.invoiceAppCode = invoiceAppCode;
	}

	public String getCheckCode() {
		return checkCode;
	}

	public void setCheckCode(String checkCode) {
		this.checkCode = checkCode;
	}

	public String getAppDept() {
		return appDept;
	}

	public void setAppDept(String appDept) {
		this.appDept = appDept;
	}

	public String getAppDeptName() {
		return appDeptName;
	}

	public void setAppDeptName(String appDeptName) {
		this.appDeptName = appDeptName;
	}

	public String getAppPerson() {
		return appPerson;
	}

	public void setAppPerson(String appPerson) {
		this.appPerson = appPerson;
	}

	public String getAppPersonName() {
		return appPersonName;
	}

	public void setAppPersonName(String appPersonName) {
		this.appPersonName = appPersonName;
	}

	public Timestamp getAppTime() {
		return appTime;
	}

	public void setAppTime(Timestamp appTime) {
		this.appTime = appTime;
	}

	public String getSettlementDeptId() {
		return settlementDeptId;
	}

	public void setSettlementDeptId(String settlementDeptId) {
		this.settlementDeptId = settlementDeptId;
	}

	public String getSettlementDept() {
		return settlementDept;
	}

	public void setSettlementDept(String settlementDept) {
		this.settlementDept = settlementDept;
	}

	public String getInvoiceTypeId() {
		return invoiceTypeId;
	}

	public void setInvoiceTypeId(String invoiceTypeId) {
		this.invoiceTypeId = invoiceTypeId;
	}

	public String getInvoiceType() {
		return invoiceType;
	}

	public void setInvoiceType(String invoiceType) {
		this.invoiceType = invoiceType;
	}

	public BigDecimal getTaxRate() {
		return taxRate;
	}

	public void setTaxRate(BigDecimal taxRate) {
		this.taxRate = taxRate;
	}

	public BigDecimal getTaxPrice() {
		return taxPrice;
	}

	public void setTaxPrice(BigDecimal taxPrice) {
		this.taxPrice = taxPrice;
	}

	public BigDecimal getNonTaxPrice() {
		return nonTaxPrice;
	}
	public void setNonTaxPrice(BigDecimal nonTaxPrice) {
		this.nonTaxPrice = nonTaxPrice;
	}

	public BigDecimal getValueAddedTax() {
		return valueAddedTax;
	}

	public void setValueAddedTax(BigDecimal valueAddedTax) {
		this.valueAddedTax = valueAddedTax;
	}

	public String getCurrency() {
		return currency;
	}

	public void setCurrency(String currency) {
		this.currency = currency;
	}

	public Float getExchangeRate() {
		return exchangeRate;
	}

	public void setExchangeRate(Float exchangeRate) {
		this.exchangeRate = exchangeRate;
	}

	public BigDecimal getConvertedRmb() {
		return convertedRmb;
	}

	public void setConvertedRmb(BigDecimal convertedRmb) {
		this.convertedRmb = convertedRmb;
	}

	public Date getHandleTime() {
		return handleTime;
	}

	public void setHandleTime(Date handleTime) {
		this.handleTime = handleTime;
	}

	public String getHandlePerson() {
		return handlePerson;
	}

	public void setHandlePerson(String handlePerson) {
		this.handlePerson = handlePerson;
	}

	public String getBillExamine() {
		return billExamine;
	}

	public void setBillExamine(String billExamine) {
		this.billExamine = billExamine;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((appDept == null) ? 0 : appDept.hashCode());
		result = prime * result + ((appDeptName == null) ? 0 : appDeptName.hashCode());
		result = prime * result + ((appPerson == null) ? 0 : appPerson.hashCode());
		result = prime * result + ((appPersonName == null) ? 0 : appPersonName.hashCode());
		result = prime * result + ((appTime == null) ? 0 : appTime.hashCode());
		result = prime * result + ((billExamine == null) ? 0 : billExamine.hashCode());
		result = prime * result + ((checkCode == null) ? 0 : checkCode.hashCode());
		result = prime * result + ((convertedRmb == null) ? 0 : convertedRmb.hashCode());
		result = prime * result + ((currency == null) ? 0 : currency.hashCode());
		result = prime * result + ((exchangeRate == null) ? 0 : exchangeRate.hashCode());
		result = prime * result + ((handlePerson == null) ? 0 : handlePerson.hashCode());
		result = prime * result + ((handleTime == null) ? 0 : handleTime.hashCode());
		result = prime * result + id;
		result = prime * result + ((invoiceAppCode == null) ? 0 : invoiceAppCode.hashCode());
		result = prime * result + ((invoiceType == null) ? 0 : invoiceType.hashCode());
		result = prime * result + ((invoiceTypeId == null) ? 0 : invoiceTypeId.hashCode());
		result = prime * result + ((nonTaxPrice == null) ? 0 : nonTaxPrice.hashCode());
		result = prime * result + ((settlementDept == null) ? 0 : settlementDept.hashCode());
		result = prime * result + ((settlementDeptId == null) ? 0 : settlementDeptId.hashCode());
		result = prime * result + ((taxPrice == null) ? 0 : taxPrice.hashCode());
		result = prime * result + ((taxRate == null) ? 0 : taxRate.hashCode());
		result = prime * result + ((valueAddedTax == null) ? 0 : valueAddedTax.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		InvoiceAppVO other = (InvoiceAppVO) obj;
		if (appDept == null) {
			if (other.appDept != null)
				return false;
		} else if (!appDept.equals(other.appDept))
			return false;
		if (appDeptName == null) {
			if (other.appDeptName != null)
				return false;
		} else if (!appDeptName.equals(other.appDeptName))
			return false;
		if (appPerson == null) {
			if (other.appPerson != null)
				return false;
		} else if (!appPerson.equals(other.appPerson))
			return false;
		if (appPersonName == null) {
			if (other.appPersonName != null)
				return false;
		} else if (!appPersonName.equals(other.appPersonName))
			return false;
		if (appTime == null) {
			if (other.appTime != null)
				return false;
		} else if (!appTime.equals(other.appTime))
			return false;
		if (billExamine == null) {
			if (other.billExamine != null)
				return false;
		} else if (!billExamine.equals(other.billExamine))
			return false;
		if (checkCode == null) {
			if (other.checkCode != null)
				return false;
		} else if (!checkCode.equals(other.checkCode))
			return false;
		if (convertedRmb == null) {
			if (other.convertedRmb != null)
				return false;
		} else if (!convertedRmb.equals(other.convertedRmb))
			return false;
		if (currency == null) {
			if (other.currency != null)
				return false;
		} else if (!currency.equals(other.currency))
			return false;
		if (exchangeRate == null) {
			if (other.exchangeRate != null)
				return false;
		} else if (!exchangeRate.equals(other.exchangeRate))
			return false;
		if (handlePerson == null) {
			if (other.handlePerson != null)
				return false;
		} else if (!handlePerson.equals(other.handlePerson))
			return false;
		if (handleTime == null) {
			if (other.handleTime != null)
				return false;
		} else if (!handleTime.equals(other.handleTime))
			return false;
		if (id != other.id)
			return false;
		if (invoiceAppCode == null) {
			if (other.invoiceAppCode != null)
				return false;
		} else if (!invoiceAppCode.equals(other.invoiceAppCode))
			return false;
		if (invoiceType == null) {
			if (other.invoiceType != null)
				return false;
		} else if (!invoiceType.equals(other.invoiceType))
			return false;
		if (invoiceTypeId == null) {
			if (other.invoiceTypeId != null)
				return false;
		} else if (!invoiceTypeId.equals(other.invoiceTypeId))
			return false;
		if (nonTaxPrice == null) {
			if (other.nonTaxPrice != null)
				return false;
		} else if (!nonTaxPrice.equals(other.nonTaxPrice))
			return false;
		if (settlementDept == null) {
			if (other.settlementDept != null)
				return false;
		} else if (!settlementDept.equals(other.settlementDept))
			return false;
		if (settlementDeptId == null) {
			if (other.settlementDeptId != null)
				return false;
		} else if (!settlementDeptId.equals(other.settlementDeptId))
			return false;
		if (taxPrice == null) {
			if (other.taxPrice != null)
				return false;
		} else if (!taxPrice.equals(other.taxPrice))
			return false;
		if (taxRate == null) {
			if (other.taxRate != null)
				return false;
		} else if (!taxRate.equals(other.taxRate))
			return false;
		if (valueAddedTax == null) {
			if (other.valueAddedTax != null)
				return false;
		} else if (!valueAddedTax.equals(other.valueAddedTax))
			return false;
		return true;
	}

	@Override
	public String toString() {
		StringBuilder builder = new StringBuilder();
		builder.append("InvoiceAppVO [id=").append(id).append(", invoiceAppCode=").append(invoiceAppCode)
				.append(", checkCode=").append(checkCode).append(", appDept=").append(appDept).append(", appDeptName=")
				.append(appDeptName).append(", appPerson=").append(appPerson).append(", appPersonName=")
				.append(appPersonName).append(", appTime=").append(appTime).append(", settlementDeptId=")
				.append(settlementDeptId).append(", settlementDept=").append(settlementDept).append(", invoiceTypeId=")
				.append(invoiceTypeId).append(", invoiceType=").append(invoiceType).append(", taxRate=").append(taxRate)
				.append(", taxPrice=").append(taxPrice).append(", nonTaxPrice=").append(nonTaxPrice)
				.append(", valueAddedTax=").append(valueAddedTax).append(", currency=").append(currency)
				.append(", exchangeRate=").append(exchangeRate).append(", convertedRmb=").append(convertedRmb)
				.append(", handleTime=").append(handleTime).append(", handlePerson=").append(handlePerson)
				.append(", billExamine=").append(billExamine).append("]");
		return builder.toString();
	}
	
}
